home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 2 / Gold Medal Software Volume 2 (Gold Medal) (1994).iso / bbsutils / ansi_j.arj / ANSI.DOC < prev    next >
Text File  |  1993-05-15  |  10KB  |  181 lines

  1. ANSI.COM
  2. Command
  3.  
  4. Michael J. Mefford
  5. 1989 No. 2 (Utilities)
  6.  
  7.  
  8. Purpose:        A memory-resident utility that enables selectable use of the
  9. extended screen and keyboard control sequences that normally require loading the
  10. ANSI.SYS device driver.  Unlike ANSI.SYS, ANSI.COM supports all video modes,
  11. permits sizing and clearing the key-assignment buffer, and provides high-speed
  12. screen updating.
  13.  
  14. Format: ANSI [FAST | SLOW][ON | OFF][KON | KOFF][PON | POFF][XON | XOFF]
  15.              [/B nnn][/P nn][/C][/U][/Q][/T]
  16.  
  17. Remarks:        ANSI.COM may be installed either at the DOS prompt or through an
  18. AUTOEXEC.BAT file.  It will not load itself if ANSI.SYS has already been loaded
  19. as part of a CONFIG.SYS file.  ANSI.COM will not load multiple copies of itself,
  20. so its command name may be invoked repeatedly in the same session to change
  21. user-selectable parameters.
  22.  
  23.         Upon loading, ANSI defaults to the FAST and ON status parameters.  For
  24. use with IBM CGA video cards (where direct screen writes produce "snow") or with
  25. some screen capture software, the SLOW (screen writing via the BIOS, as with
  26. ANSI.SYS) status option may be selected.  Entering ANSI OFF disables recognition
  27. of the ANSI control codes (but reassigned keys are still functional).
  28.  
  29.         Also upon loading ANSI defaults to KON and PON status parameters.
  30. Entering POFF disables the ANSI reassignment function so no new reassignments
  31. can be entered until reactivated by PON. Current assignments are still active.
  32. This prevents unauthorized changes to you keyboard being made by silly people
  33. who embed ANSI sequences into text documents to do harm to your system.
  34. Entering KOFF disables the ANSI reassignments but still allows new assignments
  35. to be made to the buffer or old ones removed. This allows simple ON / OFF
  36. control of assigments without clearing the buffer and reloading each time
  37. when a particular program is affected by the assignments.  All keyboard
  38. reassignments in the buffer become active again upon the issuing PON. The /Q
  39. switch can be used to suppress output when executed. /P nn can be used to
  40. protect a number of lines at the top of the screen from being scrolled when
  41. the cursor reaches the bottom of the screen. Scrolling will occur starting
  42. at the line specified (Zero is the top line and the Default setting.)
  43. /P* will use the line above the current line.                                |
  44.  
  45.         The ANSI.COM key assignment buffer defaults to a size of 200 bytes.  The
  46. buffer may be increased to as much as 60K or decreased to 0 bytes by entering
  47. ANSI with the /B switch and the desired number of bytes as nnn.  Resizing the
  48. buffer after initial installation requires deinstallation, which may be
  49. accomplished using the /U switch.  Current key assignments are lost if the
  50. buffer is resized.  The buffer can be cleared without resizing by invoking ANSI
  51. with the /C switch.
  52.  
  53.         The full command set of IBM-ANSI control sequences is printed in the
  54. original article and in the DOS Technical Reference manual.  This information
  55. can also be downloaded from PC Magnet.
  56.  
  57.         Available for downloading from PC MagNet (see the ANSI by Modem
  58. sidebar), ANSI.COM is already compiled and ready to run.  ANSI.BAS will
  59. automatically create ANSI.COM when run once in BASIC.  To create ANSI.COM from
  60. the ANSI.ASM source code requires use of a macro assembler (IBM or Microsoft,
  61. Version 2 or later) and the following commands:
  62.  
  63.        New /T option added to test if installed. Attempts to do an uninstall
  64. without actually uninstalling. If Not Installed an Errorlevel of 1 occurs.
  65. If already installed the status switches are returned in the ErrorLevel as    |
  66. follows:        OFF    1                                                      |
  67.                 ON     2                                                      |
  68.                 SLOW   4                                                      |
  69.                 FAST   8                                                      |
  70.                 KOFF   16                                                     |
  71.                 KON    32                                                     |
  72.                 POFF   64                                                     |
  73.                 PON    128                                                    |
  74. If not already installed, the program will not be installed when testing.     |
  75.  
  76.        New /S option will load stat. data from ANSICOM.SYS file for PCBoard
  77. @Variable@ substitution. This file can be created by another program (I
  78. will write one soon in QuickBasic) which reads PCBoard.DAT, CNAMES, User.Sys
  79. and User.Inf and formats the data into the required format of ANSICOM.SYS.
  80. ANSICOM.ASM shows the format of the storage. The length must be 495 Bytes
  81. (extra will be ignored, less will issue error message.) Issuing the /S option
  82. without ANSICOM.SYS being present in the current directory will result in an
  83. error message also.
  84.  
  85. XON Mode (the Default) controls the translation of @Xnn PCBoard color codes
  86. into actual screen color changes. XOFF causes the codes to be ignored (they
  87. will be translated and removed but will not actually set the color.) This
  88. allows viewing a file containg these codes in "Black-and-White" mode to
  89. how they will look to Non-Color mode Users on PCBoard.
  90.  
  91.         If the position in a set cursor position command is beyond the bounds
  92. of the screen then the highest row or column, as appropriate, is used.
  93.  
  94.  Update 3/2/89 - Fix for DOS function 0Bh, Check Standard Input Status
  95.                      and STDIN in ANSI_INT_21 handler.
  96.                  Leading zero inserted for Device Status Report for
  97.                      single digit cursor positions.
  98.                  INFORMATION typo 40 for 40H.
  99.                  WRITE_FAST modified to handle CR and LF instead of
  100.                      WRITE_CHAR.
  101.  Update 3/7/89 - Fix for CLS in graphics mode.          Version 1.2
  102.  
  103.  Update 8/8/89 - STI added to INT 21 and 29 handler.    Version 1.3
  104.  
  105.  Update 01/01/90 - [KON | KOFF] and [PON | POFF] added  Version 1.31
  106.  
  107.  Update 03/23/90 - /Q option added for no output when exectued  1.32
  108.  
  109.  Update 05/16/90 - removed Syntax from output unless needed     1.33
  110.                    added /T test for load.
  111.  
  112.  Update 10/28/90 - added /P nn command to 'Protect' nn lines    1.34
  113.                    at the top of the screen from scrolling
  114.                    up when the bottom of the screen is reached.
  115.  
  116.  Update 12/01/90 - Added PCBoard @X## color code support        1.35
  117.                    also added @Variable@ Support
  118.                    added /S to load stats data from file
  119.  
  120.  Update 12/12/90 - My mistake, I didn't realize @X00 saved      1.36
  121.                    the color and @XFF restored it. Works now.
  122.                    Also made prompts return to start of line
  123.                    when cleared (like PCBoard does) & QON
  124.                    now changes @MORE@ & @PAUSE@ into @WAIT@
  125.                    Gary Meeker (Versions 1.31 to 1.36)
  126.  
  127.  Update  4/20/91 - Change set cursor routine. If new position   1.37
  128.                    is off the screen use the last row or column.
  129.                    Added switch to not include PCB code.
  130.                    Corrected syntax display.
  131.                    Modified CLS to honor protected (/P) lines
  132.                    Modified /T to returned status switches.
  133.                    Modified /P to accept * to mean current row-1.
  134.  
  135.  Update  9/19/91 - Allow ESC[p to clear all KB reassigns and    1.38
  136.                    ESC[np to clear single key reassign.
  137.                    ie: ESC[65p will reset ascii 65 to it's default [A]
  138.  
  139.  Update 01/01/92 - Added XON/XOFF to control @X## color codes   1.39
  140.                    added support for finding relocated copies.
  141.                    This should allow LOADHI under DOS 5 or QRAM/QEMM
  142.                    (all changes marked with ;^ - Gary Meeker)
  143.                    (Was added to my 1.37 version 01/09/91 but now
  144.                    incorporated into this version as 1.39 to include
  145.                    changes by Wayne Mingee)
  146.  
  147.  Update 05/15/93 - Added additional support for PCBoard 15.0    1.3J
  148.                    @Variable:xxx@ and new variables (@DELAY:nn@,  @POS:nn@,
  149.                    @WHO@, @OFFHOURS@, @LMR@, @FREESPACE@, @RFILES@, @RBYTES@,
  150.                    @SFILES@, @SBYTES@, @BICPS@, @RCPS@, @SCPS@, @CARRIER@)
  151.                    Gary Meeker (Versions 1.39 to 1.3j)
  152.  
  153. The files contained in this Archive should be:
  154. -------------------------------------------------------------------------------
  155.     Name     Length    Date    CRC-32
  156. ANSI.DOC       9756  05-15-93 ???????? Documentation for ANSI.COM (This file)
  157. ANSI.ASM     125210  05-15-93 8aeef926 Assembly source code for ANSI.COM
  158. ANSI.COM       3715  05-15-93 1ee98ced Executable version for Non-Sysop use
  159. ANSIPCB.COM    6389  05-15-93 e3189e03 Executable version for Sysop use
  160.                                        (includes @codes@ translation)
  161. ANSICOM.ASM    4812  05-15-93 f0158867 Assembly source code for ANSICOM.SYS
  162. ANSICOM.SYS     817  05-15-93 28c7634f Sample data file for loading into
  163.                                         ANSI.COM's buffer area for translation
  164.                                         of PCBoard @codes@
  165. -------------------------------------------------------------------------------
  166.  
  167. To assemble, first change the line in ANSI.ASM:
  168.  
  169. PCB            equ     1                     ;$ 1 = if PCB code wanted
  170.  
  171. to 1 or 0 depending on whether you want PCBoard support code or not.
  172. Then use the following:
  173.  
  174. MASM ANSI;
  175. LINK ANSI;
  176. EXE2BIN ANSI ANSI.COM;
  177.  
  178. MASM ANSICOM;
  179. LINK ANSICOM;
  180. EXE2BIN ANSICOM ANSICOM.SYS;
  181.